// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.

package org.jetbrains.kotlin.idea.fir.shortenRefs;

import com.intellij.testFramework.TestDataPath;
import org.jetbrains.kotlin.idea.base.plugin.KotlinPluginMode;
import org.jetbrains.kotlin.idea.base.test.TestRoot;
import org.jetbrains.kotlin.idea.test.JUnit3RunnerWithInners;
import org.jetbrains.kotlin.idea.test.KotlinTestUtils;
import org.jetbrains.kotlin.test.TestMetadata;
import org.junit.runner.RunWith;

/**
 * This class is generated by {@link org.jetbrains.kotlin.testGenerator.generator.TestGenerator}.
 * DO NOT MODIFY MANUALLY.
 */
@SuppressWarnings("all")
@TestRoot("fir/tests")
@TestDataPath("$CONTENT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
public abstract class FirShortenRefsTestGenerated extends AbstractFirShortenRefsTest {
    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../idea/tests/testData/shortenRefsFir")
    public abstract static class ShortenRefsFir extends AbstractFirShortenRefsTest {
        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../idea/tests/testData/shortenRefsFir/bulk")
        public static class Bulk extends AbstractFirShortenRefsTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTestWithMuting, this, testDataFilePath);
            }

            @TestMetadata("nested.kt")
            public void testNested() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/bulk/nested.kt");
            }

            @TestMetadata("noShortening.kt")
            public void testNoShortening() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/bulk/noShortening.kt");
            }

            @TestMetadata("simple.kt")
            public void testSimple() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/bulk/simple.kt");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../idea/tests/testData/shortenRefsFir/calls")
        public static class Calls extends AbstractFirShortenRefsTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTestWithMuting, this, testDataFilePath);
            }

            @TestMetadata("arrayAccessWithImportAlias.kt")
            public void testArrayAccessWithImportAlias() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/arrayAccessWithImportAlias.kt");
            }

            @TestMetadata("classInSameFile.kt")
            public void testClassInSameFile() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/classInSameFile.kt");
            }

            @TestMetadata("explicitlyImportedFunctionFromLocalObject.kt")
            public void testExplicitlyImportedFunctionFromLocalObject() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/explicitlyImportedFunctionFromLocalObject.kt");
            }

            @TestMetadata("extenstionFunctionOnCompanionObjectReceiverNotShortened.kt")
            public void testExtenstionFunctionOnCompanionObjectReceiverNotShortened() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/extenstionFunctionOnCompanionObjectReceiverNotShortened.kt");
            }

            @TestMetadata("extenstionFunctionOnObjectReceiverNotShortened.kt")
            public void testExtenstionFunctionOnObjectReceiverNotShortened() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/extenstionFunctionOnObjectReceiverNotShortened.kt");
            }

            @TestMetadata("extenstionFunctionReceiverNotShortened.kt")
            public void testExtenstionFunctionReceiverNotShortened() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/extenstionFunctionReceiverNotShortened.kt");
            }

            @TestMetadata("functionInSameFile.kt")
            public void testFunctionInSameFile() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/functionInSameFile.kt");
            }

            @TestMetadata("functionInSameFile2.kt")
            public void testFunctionInSameFile2() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/functionInSameFile2.kt");
            }

            @TestMetadata("functionInSameFileAmbiguous.kt")
            public void testFunctionInSameFileAmbiguous() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/functionInSameFileAmbiguous.kt");
            }

            @TestMetadata("importAlias.kt")
            public void testImportAlias() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/importAlias.kt");
            }

            @TestMetadata("importAliasAndStarImport.kt")
            public void testImportAliasAndStarImport() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/importAliasAndStarImport.kt");
            }

            @TestMetadata("multipleImportAlias.kt")
            public void testMultipleImportAlias() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/multipleImportAlias.kt");
            }

            @TestMetadata("nestedClassConstructor.kt")
            public void testNestedClassConstructor() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/nestedClassConstructor.kt");
            }

            @TestMetadata("nestedClassConstructor_imported.kt")
            public void testNestedClassConstructor_imported() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/nestedClassConstructor_imported.kt");
            }

            @TestMetadata("notImportedTopLevelFunctionAmbiguous.kt")
            public void testNotImportedTopLevelFunctionAmbiguous() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/notImportedTopLevelFunctionAmbiguous.kt");
            }

            @TestMetadata("notImportedTopLevelFunctionConflictsWithImported.kt")
            public void testNotImportedTopLevelFunctionConflictsWithImported() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/notImportedTopLevelFunctionConflictsWithImported.kt");
            }

            @TestMetadata("notImportedTopLevelFunctionMissingArg.kt")
            public void testNotImportedTopLevelFunctionMissingArg() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/notImportedTopLevelFunctionMissingArg.kt");
            }

            @TestMetadata("notImportedTopLevelFunctionNoArgs.kt")
            public void testNotImportedTopLevelFunctionNoArgs() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/notImportedTopLevelFunctionNoArgs.kt");
            }

            @TestMetadata("notImportedTopLevelProperty.kt")
            public void testNotImportedTopLevelProperty() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/notImportedTopLevelProperty.kt");
            }

            @TestMetadata("notImportedTopLevelTypeConstructorNoArgs.kt")
            public void testNotImportedTopLevelTypeConstructorNoArgs() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/notImportedTopLevelTypeConstructorNoArgs.kt");
            }

            @TestMetadata("onlyShortenSelection.kt")
            public void testOnlyShortenSelection() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/onlyShortenSelection.kt");
            }

            @TestMetadata("propertiesDeclaredInPrimaryConstructor_accessorAnnotation.kt")
            public void testPropertiesDeclaredInPrimaryConstructor_accessorAnnotation() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/propertiesDeclaredInPrimaryConstructor_accessorAnnotation.kt");
            }

            @TestMetadata("propertiesDeclaredInPrimaryConstructor_type.kt")
            public void testPropertiesDeclaredInPrimaryConstructor_type() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/propertiesDeclaredInPrimaryConstructor_type.kt");
            }

            @TestMetadata("propertyChainCall.kt")
            public void testPropertyChainCall() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/propertyChainCall.kt");
            }

            @TestMetadata("propertyDeclaredInPrimaryConstructor_accessorAnnotation.kt")
            public void testPropertyDeclaredInPrimaryConstructor_accessorAnnotation() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/propertyDeclaredInPrimaryConstructor_accessorAnnotation.kt");
            }

            @TestMetadata("propertyDeclaredInPrimaryConstructor_type.kt")
            public void testPropertyDeclaredInPrimaryConstructor_type() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/propertyDeclaredInPrimaryConstructor_type.kt");
            }

            @TestMetadata("propertyInSameFile.kt")
            public void testPropertyInSameFile() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/propertyInSameFile.kt");
            }

            @TestMetadata("propertyInSameFile2.kt")
            public void testPropertyInSameFile2() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/propertyInSameFile2.kt");
            }

            @TestMetadata("rootPackage.kt")
            public void testRootPackage() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/rootPackage.kt");
            }

            @TestMetadata("selfReferencingFunction.kt")
            public void testSelfReferencingFunction() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/selfReferencingFunction.kt");
            }

            @TestMetadata("variableNotShortened.kt")
            public void testVariableNotShortened() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/calls/variableNotShortened.kt");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../idea/tests/testData/shortenRefsFir/fakeRootPackage")
        public static class FakeRootPackage extends AbstractFirShortenRefsTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTestWithMuting, this, testDataFilePath);
            }

            @TestMetadata("rootPackageShortenFakeRootPackage.kt")
            public void testRootPackageShortenFakeRootPackage() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/fakeRootPackage/rootPackageShortenFakeRootPackage.kt");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../idea/tests/testData/shortenRefsFir/quailfiers")
        public static class Quailfiers extends AbstractFirShortenRefsTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTestWithMuting, this, testDataFilePath);
            }

            @TestMetadata("AlreadyImportedNestedType.kt")
            public void testAlreadyImportedNestedType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/quailfiers/AlreadyImportedNestedType.kt");
            }

            @TestMetadata("Enum.kt")
            public void testEnum() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/quailfiers/Enum.kt");
            }

            @TestMetadata("NestedTypeInSameFile.kt")
            public void testNestedTypeInSameFile() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/quailfiers/NestedTypeInSameFile.kt");
            }

            @TestMetadata("NotImportedNestedType.kt")
            public void testNotImportedNestedType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/quailfiers/NotImportedNestedType.kt");
            }

            @TestMetadata("NotImportedTopLevelType.kt")
            public void testNotImportedTopLevelType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/quailfiers/NotImportedTopLevelType.kt");
            }

            @TestMetadata("TopLevelTypeInSameFile.kt")
            public void testTopLevelTypeInSameFile() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/quailfiers/TopLevelTypeInSameFile.kt");
            }

            @TestMetadata("TwoVariablesInKtUseType.kt")
            public void testTwoVariablesInKtUseType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/quailfiers/TwoVariablesInKtUseType.kt");
            }

            @TestMetadata("typeQualifierImportAlias.kt")
            public void testTypeQualifierImportAlias() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/quailfiers/typeQualifierImportAlias.kt");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../idea/tests/testData/shortenRefsFir/shortenAndImport")
        public static class ShortenAndImport extends AbstractFirShortenRefsTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTestWithMuting, this, testDataFilePath);
            }

            @TestMetadata("TwoVariablesInKtUseType.kt")
            public void testTwoVariablesInKtUseType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/shortenAndImport/TwoVariablesInKtUseType.kt");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../idea/tests/testData/shortenRefsFir/starImport")
        public static class StarImport extends AbstractFirShortenRefsTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTestWithMuting, this, testDataFilePath);
            }

            @TestMetadata("starImportAlreadyExists.kt")
            public void testStarImportAlreadyExists() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/starImport/starImportAlreadyExists.kt");
            }

            @TestMetadata("TwoVariablesInKtUseType.kt")
            public void testTwoVariablesInKtUseType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/starImport/TwoVariablesInKtUseType.kt");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../idea/tests/testData/shortenRefsFir/types")
        public static class Types extends AbstractFirShortenRefsTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTestWithMuting, this, testDataFilePath);
            }

            @TestMetadata("ParameterType.kt")
            public void testParameterType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterType.kt");
            }

            @TestMetadata("ParameterTypeConflictingTopLevelClassNotUsed.kt")
            public void testParameterTypeConflictingTopLevelClassNotUsed() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeConflictingTopLevelClassNotUsed.kt");
            }

            @TestMetadata("ParameterTypeConflictingTopLevelClassUsed.kt")
            public void testParameterTypeConflictingTopLevelClassUsed() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeConflictingTopLevelClassUsed.kt");
            }

            @TestMetadata("ParameterTypeFunctionalType.kt")
            public void testParameterTypeFunctionalType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeFunctionalType.kt");
            }

            @TestMetadata("ParameterTypeGenericTypes.kt")
            public void testParameterTypeGenericTypes() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeGenericTypes.kt");
            }

            @TestMetadata("ParameterTypeGenericTypes_missingTypeArgumentError.kt")
            public void testParameterTypeGenericTypes_missingTypeArgumentError() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeGenericTypes_missingTypeArgumentError.kt");
            }

            @TestMetadata("ParameterTypeImplicitImportBeatsStarImport.kt")
            public void testParameterTypeImplicitImportBeatsStarImport() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeImplicitImportBeatsStarImport.kt");
            }

            @TestMetadata("ParameterTypeImportAlias.kt")
            public void testParameterTypeImportAlias() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeImportAlias.kt");
            }

            @TestMetadata("ParameterTypeImportedNestedClass.kt")
            public void testParameterTypeImportedNestedClass() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeImportedNestedClass.kt");
            }

            @TestMetadata("ParameterTypeImportedTypeWins.kt")
            public void testParameterTypeImportedTypeWins() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeImportedTypeWins.kt");
            }

            @TestMetadata("ParameterTypeNestedType.kt")
            public void testParameterTypeNestedType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeNestedType.kt");
            }

            @TestMetadata("ParameterTypeNestedTypeWithoutPackageNotShorten.kt")
            public void testParameterTypeNestedTypeWithoutPackageNotShorten() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeNestedTypeWithoutPackageNotShorten.kt");
            }

            @TestMetadata("ParameterTypeNonImportedClass.kt")
            public void testParameterTypeNonImportedClass() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeNonImportedClass.kt");
            }

            @TestMetadata("ParameterTypeNonImportedClassTwice.kt")
            public void testParameterTypeNonImportedClassTwice() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeNonImportedClassTwice.kt");
            }

            @TestMetadata("ParameterTypeNotImportedNestedClass.kt")
            public void testParameterTypeNotImportedNestedClass() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeNotImportedNestedClass.kt");
            }

            @TestMetadata("ParameterTypeNullableType.kt")
            public void testParameterTypeNullableType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeNullableType.kt");
            }

            @TestMetadata("ParameterTypeStarImportedTypeLoses.kt")
            public void testParameterTypeStarImportedTypeLoses() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeStarImportedTypeLoses.kt");
            }

            @TestMetadata("ParameterTypeTopLevelTypeLoses.kt")
            public void testParameterTypeTopLevelTypeLoses() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeTopLevelTypeLoses.kt");
            }

            @TestMetadata("ParameterTypeTopLevelTypeWins.kt")
            public void testParameterTypeTopLevelTypeWins() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeTopLevelTypeWins.kt");
            }

            @TestMetadata("ParameterTypeTwoNonImportedClassesConflict.kt")
            public void testParameterTypeTwoNonImportedClassesConflict() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/ParameterTypeTwoNonImportedClassesConflict.kt");
            }

            @TestMetadata("VariableType.kt")
            public void testVariableType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/VariableType.kt");
            }

            @TestMetadata("VariableTypeConflictWithLocalType.kt")
            public void testVariableTypeConflictWithLocalType() throws Exception {
                runTest("../../idea/tests/testData/shortenRefsFir/types/VariableTypeConflictWithLocalType.kt");
            }
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../idea/tests/testData/shortenRefs/this")
    public static class This extends AbstractFirShortenRefsTest {
        @java.lang.Override
        @org.jetbrains.annotations.NotNull
        public final KotlinPluginMode getPluginMode() {
            return KotlinPluginMode.K2;
        }

        private void runTest(String testDataFilePath) throws Exception {
            KotlinTestUtils.runTest(this::doTestWithMuting, this, testDataFilePath);
        }

        @TestMetadata("cantShortenThis.kt")
        public void testCantShortenThis() throws Exception {
            runTest("../../idea/tests/testData/shortenRefs/this/cantShortenThis.kt");
        }

        @TestMetadata("cantShortenThisLabel.kt")
        public void testCantShortenThisLabel() throws Exception {
            runTest("../../idea/tests/testData/shortenRefs/this/cantShortenThisLabel.kt");
        }

        @TestMetadata("shortenExtensionThis.kt")
        public void testShortenExtensionThis() throws Exception {
            runTest("../../idea/tests/testData/shortenRefs/this/shortenExtensionThis.kt");
        }

        @TestMetadata("shortenThis.kt")
        public void testShortenThis() throws Exception {
            runTest("../../idea/tests/testData/shortenRefs/this/shortenThis.kt");
        }

        @TestMetadata("shortenThisBothReceivers.kt")
        public void testShortenThisBothReceivers() throws Exception {
            runTest("../../idea/tests/testData/shortenRefs/this/shortenThisBothReceivers.kt");
        }

        @TestMetadata("shortenThisLabel.kt")
        public void testShortenThisLabel() throws Exception {
            runTest("../../idea/tests/testData/shortenRefs/this/shortenThisLabel.kt");
        }

        @TestMetadata("shortenThisWithLabel.kt")
        public void testShortenThisWithLabel() throws Exception {
            runTest("../../idea/tests/testData/shortenRefs/this/shortenThisWithLabel.kt");
        }

        @TestMetadata("visitorConflict.kt")
        public void testVisitorConflict() throws Exception {
            runTest("../../idea/tests/testData/shortenRefs/this/visitorConflict.kt");
        }
    }
}
